const TAB Char { \t }

message default WrittenRecords { n Integer }
    singular("written "..{n}.." record.")
    plural("written "..{n}.." records.")

public method Foo.bar Baz {
    let a := when (foo?) {
        T(x) => (x + 1),
        None => {
            let x := 1,
            (x + 1)
        }
    },
    let b := when (x?,y?) {
        (T,None) (x,_) => x,
        (None,T) (_,y) => y,
        (T,T) | (None,None) => None
    },
    let c := {
        let prompt := 'echo:',
        \ await line := sys::scanln(prompt),
        \ await sys::println(line),
        return()
    },
    List(u, v)
}

public operator foobar[A,B] { a A, b B } { c Implicit } Pair[A,B] {
    expr | pipeTo(args)
}


